home *** CD-ROM | disk | FTP | other *** search
/ APC & TCP 4 / APC & TCP 4.iso / games / publicdomain / a / asteroids2 / rotx / h / sound.h < prev   
C/C++ Source or Header  |  1995-07-20  |  995b  |  38 lines

  1.  
  2. typedef struct sounddata
  3. {
  4.  ULONG rate;
  5.  ULONG length;
  6.  ULONG volume;
  7.  BYTE *audiodata;
  8. };
  9.  
  10. #define BODY MAKE_ID('B','O','D','Y')
  11. #define VHDR MAKE_ID('V','H','D','R')
  12. #define ID_8SVX MAKE_ID('8','S','V','X')
  13.  
  14. struct Voice8Header
  15. {
  16.     ULONG oneShotHiSamples;    /* # samples in the high octave 1-shot part */
  17.     ULONG repeatHiSamples;    /* # samples in the high octave repeat part */
  18.     ULONG samplesPerHiCycle;    /* # samples/cycle in high octave, else 0 */
  19.     UWORD samplesPerSec;    /* data sampling rate */
  20.     UBYTE ctOctave;        /* # of octaves of waveforms */
  21.     UBYTE sCompression;        /* data compression technique used */
  22.     LONG     volume;            /* playback nominal volume from 0 to Unity
  23.                          * (full volume). Map this value into
  24.                          * the output hardware's dynamic range. */
  25. };
  26.  
  27. enum    {  L1,R1,L2,R2 };
  28.  
  29. #define LEFT0F  1
  30. #define RIGHT0F  2
  31. #define RIGHT1F  4
  32. #define LEFT1F  8
  33.  
  34. #define LEFT_MASK    (LEFT0F | LEFT1F)
  35. #define RIGHT_MASK    (RIGHT0F | RIGHT1F)
  36.  
  37. UBYTE Channel[] = { LEFT0F | RIGHT0F | LEFT1F | RIGHT1F };
  38.